﻿#ifndef FILEENCODEMANAGER_H
#define FILEENCODEMANAGER_H

#include "md5.h"
#include "FileFunction.h"
#include "typeConver.h"
#include <QFileInfo>
#include <QObject>
#include <QDebug>
#include <QMainWindow>
#include <QMessageBox>
#include <QFileDialog>
#include <QDebug>
#include <QTime>
#include <QDir>
#include <QFile>
#include <QString>
#include <QCryptographicHash>
#include <QDirIterator>
#include <QProgressBar>
#include <stdio.h>
#include <stdbool.h>
#include <iostream>
#include <fstream>
using namespace std;

class FileEncodeManager : public QObject
{
    Q_OBJECT
public:
    FileEncodeManager();
    void saveEncodeData(const char *path = nullptr,const unsigned int size = 0, const QString filePath = nullptr, MD5 *md5 = nullptr);
    void createMd5(const QString filePath = nullptr,const unsigned int size = 0);
    bool setFileEncodePath(const QString fileEncodePath = nullptr);
    bool finishEncode;
    QList<QFileInfo> m_fileInfoList;
    QString m_fileRootPath;
private:

public slots:
    void on_fileEncode();
};

#endif // FILEENCODEMANAGER_H
